BIN=code
CC=gcc
#SRC=$(shell ls *.c)
SRC=$(wildcard *.c)
OBJ=${SRC:.c=.o}
LFLAGS=-o
FLAGS=-c
RM=rm -f

$(BIN):$(OBJ)
	@$(CC) $(LFLAGS) $@ $^
	@echo "linking ... $^ to $@"
%.o:%.c
	@$(CC) $(FLAGS) $<
	@echo "compling ... $< to $@"
.PHONY:clean
clean:
	$(RM) $(BIN) $(OBJ)


#BIN=proc.exe
#CC=gcc
#SRC=myproc.c
#OBJ=myproc.o
#LFLAGS=-o
#FLAGS=-c
#RM=rm -f
#
#$(BIN):$(OBJ)
#	$(CC) $(LFLAGS) $@ $^
#%.o:%.c
#	$(CC) $(FLAGS) $<
#.PHONY:clean
#clean:
#	$(RM) $(BIN) $(OBJ)
#BIN=myproc
#CC=gcc
#SRC=myproc.c
#FLAGS=-o
#RM=rm -f
#$(BIN):$(SRC)
#	$(CC) $(FLAGS) $@ $^
#.PHONY:clean
#clean: 
#	$(RM) $(BIN)
#.PHONY:test
#test:
#	@echo $(BIN)


#BIN=myproc
#CC=gcc
#SRC=myproc.c
#FLAGS=-o
#RM=rm -f
#$(BIN):$(SRC)
#	$(CC) $(FLAGS) $(BIN) $(SRC)
#.PHONY:clean
#clean: 
#	$(RM) $(BIN)
#.PHONY:test
#test:
#	@echo $(BIN)


#echo $(BIN)
#myproc:myproc.o
#	gcc myproc.o -o myproc
#myproc.o:myproc.s
#	gcc -c myproc.s -o myproc.o
#myproc.s:myproc.i
#	gcc -S myproc.i -o myproc.s
#myproc.i:myproc.c
#	gcc -E myproc.c -o myproc.i
#.PHONY: clean
#clean:
#	rm -rf myproc
